//页面初始化
$(function(){
	initCreateByTitle();
	
	initTable();
	
	//关闭新增编辑窗口
	$("#closeBtn").click(function() {
		backendCommon.closeWin("acquisitionConfigWin");
	});
	//关闭配置窗口
	$("#cancelTemplateBtn").click(function() {
		backendCommon.closeWin("configTemplateWin");
	});
});

//初始化列表页面
function initTable() {
	$('#tt').datagrid({
		width : backendCommon.getWidth(0.94),
		height : backendCommon.getHeight(0.84),
		loadMsg : "数据装载中....",
		url : mainDomain+'/acquisitionConfig/findAcquisitionConfigList.action',
		nowrap : false,
		fitColumns : true,
		striped : true,
		rownumbers : true,
		singleSelect : true,
		pagination : true,
		pageSize : 5,
		queryParams : {
			acquisitionName : $("#acquisitionName").val(),
			createBy : $("#createById").val(),
			keyword : $("#keyword").val(),
			isOpen : $("#configStatusSelect").val(),
			sectionId : $("#sectionInfoSelect").val(),
			startTimeStr : $("#startTime").val(),
			endTimeStr : $("#endTime").val()
		}, 
		columns : [[
				{field : 'id',title : '配置模板ID',width : $(this).width() * 0.10,align : 'center'},
				{field : 'acquisitionName',title : '配置名称',width : $(this).width() * 0.10,align : 'center'},
				{field : 'sectionName',title : '采集栏目名称',width : $(this).width() * 0.15,align : 'center'},
				{field : 'acquisitionFrequency',title : '采集频率',width : $(this).width() * 0.10,align : 'center'},
				{field : 'websiteSource',title : '网站来源',width : $(this).width() * 0.15,align : 'center'},
				{field : 'isOpen',title : '配置状态',width : $(this).width() * 0.10,align : 'center',
					formatter : function(value, rec, index) {
						var str = "";
						if(value == 0) {
							str = "关闭";
						} else if(value == 1) {
							str = "开启";
						} else if(value == 2) {
							str = "配置中";
						}
						return str;
					}
				},
				{field : 'acquisitionStartTime',title : '执行开始时间',width : $(this).width() * 0.10,align : 'center',
					formatter : function(value, rec, index) {
						var str = "";
						if(value != '') {
							str = backendCommon.dateTimeToLocalStringWithSeconds(value);
						}
						return str;
					}
				},
				{field : 'opt',title : '配置管理',width : $(this).width() * 0.25,align : 'center',
					formatter : function(value, rec, index) {
						var str = "";
						str += '<div><a class="btn_blue06" href="javascript:void(0);" onclick="updateConfigWin('+rec.id+');">修改</a></div>';
						str += '<div><a class="btn_blue06" href="javascript:void(0);" onclick="showConfigTemplate('+index+');">配置</a></div>';
						str += '<div><a class="btn_blue06" href="javascript:void(0);" onclick="deleteAcquisitionConfig('+rec.id+', 0);">删除</a></div>';
						return str;
					}
				}
			]],
        toolbar:[
       {
        	text : '查询',
        	iconCls : 'icon-search',
        	handler : queryAcquisitionConfig
        }, 
        {
        	text : '导出',
        	iconCls : 'icon-redo',
        	handler : exportAcquisitionConfig
        }, 
        {
            text:'新增配置',
            iconCls:'icon-add',
            handler:openAddAcquisitionWin
        }]
	});
}

//查询
function queryAcquisitionConfig() {
	$('#tt').datagrid('reload', {
		acquisitionName : $("#acquisitionName").val(),
		createBy : $("#createById").val(),
		keyword : $("#keyword").val(),
		isOpen : $("#configStatusSelect").val(),
		sectionId : $("#sectionInfoSelect").val(),
		startTimeStr : $("#startTime").val(),
		endTimeStr : $("#endTime").val()
	});
}

//导出
function exportAcquisitionConfig() {
	
}

//打开新增对话框
function openAddAcquisitionWin() {
	//初始化窗口
	//清空隐藏属性，栏目ID
	$("#acquisitionConfigId").val("");
	backendCommon.formReset("acquisitionConfigForm");
	backendCommon.openeWin('acquisitionConfigWin');
	$("#saveBtn").unbind('click').click(function() {
		addOrUpdateAcquisitionConfig();
	});
}

//新增、编辑采集模板配置
function addOrUpdateAcquisitionConfig() {
	//选取填写数据
	var acquisitionConfigName = $("#acquisitionConfigNameIpt").val();
	var acquisitionConfigUrl = $("#acquisitionConfigUrlIpt").val();
	var acquisitionFrequency = $("#acquisitionFrequencySelect").val();
	var sectionId = $("#sectionSelect").val();
	var websiteSource = $("#websiteSourceIpt").val();
	var keywordFilter = $("#keywordFilterIpt").val();
	var id = $("#acquisitionConfigId").val();
	//校验数据
	if(acquisitionConfigName == '') {
		$.messager.alert('提示',"配置模板名称不能为空！",'error');
		return false;
	}
	if(acquisitionConfigName.length > 30) {
		$.messager.alert('提示',"配置模板名称不能大于30个字符！",'error');
		return false;
	}
	if(acquisitionConfigUrl == '') {
		$.messager.alert('提示',"采集目标URL不能为空！",'error');
		return false;
	}
	if(acquisitionConfigUrl.length > 300) {
		$.messager.alert('提示',"栏目别名不能大于300个字符！",'error');
		return false;
	}
	//组装参数
	var param={
			'id':id,
			'acquisitionName':acquisitionConfigName,
			'acquisitionUrl':acquisitionConfigUrl,
			'sectionId':sectionId,
			'acquisitionFrequency':acquisitionFrequency,
			'websiteSource':websiteSource,
			'keywordFilter':keywordFilter
	};
	
	//新增编辑栏目
	$.post(mainDomain+ '/acquisition/addOrUpdateAcquisitionConfig.action',param,function(result){
		if (result.success && result.state == 1) {
			if(id != null) {
				$.messager.alert('提示', '更新成功！');
			} else {
				$.messager.alert('提示', '新增成功！');
			}
			$("#tt").datagrid('reload');
			backendCommon.closeWin('acquisitionConfigWin');
		}
	});
	
}

//初始化创建人查询
function initCreateByTitle() {
	$("#createBy").autocomplete(mainDomain+"/backend/queryBackendOperatorByName.action", {
		max : 10,
		minChars : 1,
		matchCase : false,
		matchContains : true,
		matchContains : "word",
		scroll : false,
		autoFill : false,
		extraParams : {
			term : function() {
				return $("#createBy").val();
			}
		},
		parse : function(data) {
			var rows = [];
			var operatorList = data.data.rows;
			for(var i = 0;i < operatorList.length;i++) {
				rows[rows.length] = {
					data : operatorList[i],
					value : operatorList[i].realName,
					result : operatorList[i].realName
				};
			}
			return rows;
		},
		formatItem : function(row, i, max) {
			return   row.realName;
		},
		formatMatch : function(row, i, max) {
			return row.realName;
		},
		formatResult : function(row) {
			return row.realName;
		}
	}).result(function(event, row, formatted) {
		$("#createById").val(row.id);
	});
}

//打开更新编辑窗口
function updateConfigWin(id) {
	//编辑配置前查询
	$.post(mainDomain+ '/acquisition/queryAcquisitionConfigById.action', {configId : id}, function(result){
		if (result.success) {
			//填充数据
			var config = result.data.configVO;
			if(config != null) {
				$("#acquisitionConfigId").val(config.id);
				$("#acquisitionConfigNameIpt").val(config.acquisitionName);
				$("#acquisitionConfigUrlIpt").val(config.acquisitionUrl);
				$("#acquisitionFrequencySelect").find("option[value='"+config.acquisitionFrequency+"']").attr("selected",true);
				$("#sectionSelect").find("option[value='"+config.sectionId+"']").attr("selected",true);
				$("#websiteSourceIpt").val(config.websiteSource);
				$("#keywordFilterIpt").val(config.keywordFilter);
				
				backendCommon.openeWin('acquisitionConfigWin');
				$("#saveBtn").unbind('click').click(function() {
					addOrUpdateAcquisitionConfig(false);
				});
			} else {
				$.messager.alert('提示', '返回数据为空', 'error');
			}
		} else {
			$.messager.alert('提示', result.message, 'error');
		}
	});
	
}

//展示配置模板
function showConfigTemplate(rowIndex) {
	var rows = $('#tt').datagrid('getRows');
	var rowData = rows[rowIndex];
	//赋值
	$("#configId").val(rowData.id);
	$("#configNameIpt").val(rowData.acquisitionName);
	$("#configUrlIpt").val(rowData.acquisitionUrl);
	
	//打开配置模板对话框
	backendCommon.openeWin('configTemplateWin');
	//设置模板测试按钮
	$("#testAcquisitionBtn").unbind('click').click(function() {
		testForAcquisition();
	});
	//设置模板保存更新按钮
	$("#updateTemplateBtn").unbind('click').click(function() {
		updateTemplate();
	});
}

//模板测试
function testForAcquisition() {
	var configId = $("#configId").val();
}

//模板保存更新
function updateTemplateBtn() {
	var configId = $("#configId").val();
}